Location specifying apparatus and non-transitory computer-readable medium

ABSTRACT

A location specifying apparatus comprises a first circuit and a second circuit. The first circuit is configured to store information regarding a predetermined feature including location information of the predetermined feature, information regarding a position of a specific point on a road, and information indicating a correlation of the information regarding the predetermined feature to the information regarding the position of the specific point on the road. The second circuit is configured to obtain image data ahead of a moving body; to identify a location of the predetermined feature in an image expressed by the image data, based on the information regarding the position of the specific point on the road, the information indicating the correlation, and the information regarding the predetermined feature; and to specify the location of the moving body, based on the identified location of the predetermined feature.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/815,645, filed on Jul. 31, 2015, the entirety of disclosure of whichis hereby incorporated by reference into this application. U.S. patentapplication Ser. No. 14/815,645 claims priority from Japanese PatentApplication No. 2014-175912 filed on Aug. 29, 2014.

BACKGROUND Technical Field

The present disclosure relates to specifying the location of a vehicle.

Description of the Related Art

A proposed apparatus analyzes an image taken by a vehicle-mounted cameraand specifies the current location of a vehicle during driving. Forexample, a proposed apparatus stores in advance information regardingroad marking lines representing boundaries of lanes and map informationincluding information regarding landmarks such as road surface markingsand signs, analyzes a taken image to extract landmarks and road markinglines, and identify a location of highest matching with the extractedlandmarks and road marking lines in a map indicated by the mapinformation.

The prior art apparatus described above, however, analyzes the entiretaken image for extraction of landmarks and road marking lines andaccordingly has a problem of increasing the processing load andrequiring the long time for specifying the location of the vehicle. Thismay lead to a problem of delayed control of steering or power output inan application that automatically controls the steering or the poweroutput of the vehicle based on the specified location of the vehicle.This problem is not limited to the vehicle-mounted camera but iscommonly found in any location specifying apparatus that analyzes animage obtained by a reflected wave of any wavelength, for example, amillimeter waveband radar or a laser to specify the location of thevehicle.

SUMMARY

According to one aspect of the disclosure, there is provided a locationspecifying apparatus that specifies a location of a moving body. Thelocation specifying apparatus comprises a first circuit and a secondcircuit. The first circuit is configured to store information regardinga predetermined feature including location information of thepredetermined feature, information regarding a position of a specificpoint on a road, and information indicating a correlation of theinformation regarding the predetermined feature to the informationregarding the position of the specific point on the road. The secondcircuit is configured to obtain image data ahead of the moving body; toidentify a location of the predetermined feature in an image expressedby the image data, based on the information regarding the position ofthe specific point on the road, the information specifying thecorrelation, and the information regarding the predetermined feature;and to specify the location of the moving body, based on the identifiedlocation of the predetermined feature.

The disclosure may be implemented by various other aspects, for example,a vehicle control apparatus, a drive assist system, a vehicle, a methodof specifying location of a vehicle, a computer program implementingeach of these apparatuses and methods, and a non-transitory recordingmedium storing such a computer program.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating the schematic configuration of alocation specifying apparatus 100 according to one embodiment of thedisclosure;

FIG. 2 is a diagram illustrating first vectors according to the firstembodiment;

FIG. 3 is a diagram showing one example of settings in the vector tablestored in the first vector information storage unit 141 shown in FIG. 1;

FIG. 4 is a diagram showing an example of settings in the feature tablestored in the feature information storage unit 143 shown in FIG. 1;

FIG. 5 is a flowchart showing a procedure of vehicle location specifyingprocess according to the first embodiment;

FIG. 6 is a diagram illustrating a third vector Vgp according to thefirst embodiment;

FIG. 7 is a diagram illustrating one example of the existing areaestimated at step S125;

FIG. 8 is a block diagram illustrating the schematic configuration of alocation specifying apparatus 100 a according to a second embodiment;

FIG. 9 is a diagram illustrating one example of settings in the vectortable of the second embodiment;

FIG. 10 is a flowchart showing a procedure of vehicle locationspecifying process according to the second embodiment;

FIG. 11 is a flowchart showing a procedure of vehicle locationspecifying process according to a third embodiment;

FIG. 12 is a flowchart showing a procedure of vehicle locationspecifying process according to a third embodiment;

FIG. 13A shows an image F1 obtained in a previous cycle of the vehiclelocation specifying process;

FIG. 13B shows an image F11 obtained in a current cycle of the vehiclelocation specifying process;

FIG. 14 is a diagram showing one example of settings in a vector tableaccording to a fourth embodiment;

FIG. 15 is a diagram illustrating one example of settings in the anglefield of the vector table;

FIG. 16 is a flowchart showing a procedure of vehicle locationspecifying process according to the fourth embodiment;

FIG. 17 is a block diagram illustrating the schematic configuration of alocation specifying apparatus 100 b according to a fifth embodiment;

FIG. 18 is a diagram illustrating a sixth vector in the fifthembodiment;

FIG. 19 is a flowchart showing a procedure of vehicle locationspecifying process according to the fifth embodiment;

FIG. 20 is a diagram illustrating an existing area according to thefifth embodiment; and

FIG. 21 is a diagram schematically illustrating the processing detail ofsteps S250 and S255.

DESCRIPTION OF EMBODIMENTS A. First Embodiment

A1. Configuration of Apparatus FIG. 1 is a block diagram illustratingthe schematic configuration of a location specifying apparatus 100according to one embodiment of the disclosure. The location specifyingapparatus 100 shown in FIG. 1 is mounted on a vehicle (not shown) tospecify the location of the vehicle. The vehicle may perform automaticcontrol of steering or power output, give an alarm to the driver orperform route search or route guidance, based on the location specifiedby the location specifying apparatus 100. The term “vehicle” heredenotes any vehicle enabled to run on the road, for example, a motortruck, taxi, bus, motorbike or a bicycle.

As shown in FIG. 1, the location specifying apparatus 100 includes aCentral Processing Unit (CPU) 110, a Random Access Memory (RAM) 120, aRead Only Memory (ROM) 130, a hard disk drive 140, an image inputinterface (I/F) module 150 and a GPS input interface (I/F) module 160.These components are respectively connected with an internal bus 190.

The CPU 110 performs a control program stored in the ROM 130 to serve asan image data acquirer 111, a positioning result acquirer 112, an areaestimator 113 and a locator 114.

The image data acquirer 111 obtains image data of an image taken by animaging camera 200 and stores the obtained image data in the hard diskdrive 140. According to this embodiment, the imaging camera 200 is adigital video camera having a Charge Coupled Device (CCD) and obtainsvideo data (image data) in a specified number of pixels. According tothis embodiment, the imaging camera 200 is mounted on the vehicle tohave an imaging range ahead of the vehicle.

The positioning result acquirer 112 obtains information regarding thecurrent location (latitude, longitude and altitude) as the positioningresult by a Global Positioning System (GPS) positioning device 300. TheGPS positioning device 300 is a known device that computes the currentlocation based on signals output from global positioning system (GPS)satellites, and is thus not specifically described herein. According tothis embodiment, the location of the vehicle is specified as thelocation of the GPS positioning device 300 mounted on the vehicle.According to this embodiment, the locations at which the imaging camera200 and the GPS positioning device 300 are installed in the vehicle arefixed and are not changed.

The area estimator 113 estimates an existing area where an objectfeature exists in the taken image in a vehicle location specifyingprocess described later. The object feature and the existing area willbe described later in detail.

The hard disk drive 140 includes a first vector information storage unit141, a second vehicle information storage unit 142 and a featureinformation storage unit 143. The first vehicle information storage unit141 stores in advance information regarding first vectors associatedwith respective specific points described later, in the form of a vectortable.

FIG. 2 is a diagram illustrating first vectors according to the firstembodiment. In this embodiment, points where vector information is set(hereinafter referred to as “specific points”) are set at predeterminedintervals with respect to each lane where the vehicle runs. Morespecifically, as shown in FIG. 2, specific points are set on a middleline 55 of a lane 50 located between a center line 60 and a curbstone 70at predetermined intervals along the middle line 55. For convenience ofillustration, only three specific points p1, p2 and p3 are shown in FIG.2. A sign 10 is placed near outside of the lane 50 to be visible fromvehicles running on the lane 50. The sign 10 has a circular shape inplanar view. The shape, the design and the location of the sign 10 areunlikely to change. Accordingly, the sign 10 is used as a landmark inthe process of specifying the location of the vehicle. In addition tothe sign 10, another sign different from the sign 10, a power pole or aroad surface marking may also be used as a landmark in the process ofspecifying the location of the vehicle. According to this embodiment, afeature used as a landmark in the process of specifying the location ofthe vehicle as described above (hereinafter called “object feature”) isset in advance related to each specific point.

According to this embodiment, with respect to each of the specificpoints, a vector directed from the specific point to the landmark is setas a first vector Vps. More specifically, for example, with respect to aspecific point p1, a vector directed from the specific point p1 to thesign 10 is set as a first vector Vps1. Similarly, with respect to aspecific point p2, a vector directed from the specific point p2 to thesign 10 is set as a first vector Vps2. With respect to a specific pointp3, a vector directed from the specific point p3 to the sign 10 is setas a first vector Vps3. According to this embodiment, the position ofthe end point of each first vector is set at a center point of arepresentative surface of the sign 10. This “representative surface ofthe sign 10” denotes a surface on which a mark as the sign is shown, soas to serve as a landmark.

FIG. 3 is a diagram showing one example of settings in the vector tablestored in the first vector information storage unit 141 shown in FIG. 1.The vector table includes a “specific point identifier” field, a“position information” field, a “first vector” field and an “objectfeature identifier” field. The specific point identifier field storesidentifiers of the respective specific points. The position informationfield stores position information (latitude, longitude and altitude) ofthe respective specific points. The first vector field storesinformation regarding first vectors associated with the respectivespecific points. The object feature identifier field stores anidentifier of each object feature. In the example of FIG. 3, the vectortable has registry of three records set with respect to the threespecific points p1 to p3 shown in FIG. 2. More specifically, the topmostrecord of FIG. 3 is a record regarding the specific point p1 andincludes the settings of “p1” as the identifier of the specific pointp1, “X1,Y1,Z1” as the position information of the specific point p1,“dx1,dy1,dz1” as the first vector of the specific point p1 (morespecifically, as the first vector Vps1 directed from the specific pointp1 to the sign 10), and “L1” as the identifier of the object feature(more specifically, the sign 10) related to the specific point p1.Similarly, the second top record of FIG. 3 is a record regarding thespecific point p2, and the third top record of FIG. 3 is a recordregarding the specific point p3. The settings of the vector table arespecified in advance by an administrator. The feature used as the objectfeature is set by the administrator as a feature that is likely to beincluded in an image taken by the imaging camera 200 when the vehicle islocated near the relevant specific point. The values of the respectivefields in FIG. 3 are given as typical values.

The second vector information storage unit 142 shown in FIG. 1 storesinformation regarding second vectors. According to this embodiment, thesecond vector denotes a vector directed from the GPS positioning device300 to the imaging camera 200.

The feature information storage unit 143 shown in FIG. 1 storesinformation regarding features such as signs placed near the road androad surface markings (hereinafter referred to as “feature information”)in the form of a feature table.

FIG. 4 is a diagram showing an example of settings in the feature tablestored in the feature information storage unit 143 shown in FIG. 1. Thefeature table includes a “feature identifier” field, a “locationinformation” field, a “shape” field, a “size” field and a “polygonidentifier” field. The feature identifier field stores identifiers ofrespective features. The location information field stores locationinformation (latitude, longitude and altitude) of the respectivefeatures. The shape field stores external shapes of representativesurfaces of the respective features. The size field stores informationregarding sizes of the representative surfaces of the respectivefeatures. The polygon identifier field stores identifiers of polygonsrepresenting the respective features. Polygon data of the respectivefeatures are related to the above polygon identifiers and are stored inthe hard disk drive 140. In the example of FIG. 4, the feature table hasregistry of two records. The record with the feature identifier “L1” isa record regarding the sign 10 and includes the settings of“XI1,YI1,ZI1” as the location information of the sign 10, “circle” asthe shape of the sign 10, “R (radius)=300 mm” as the size of the sign10, and “PG1” as the polygon identifier of the sign 10. The record withthe feature identifier “L2” is a record regarding a square sign (forexample, a sign indicating the direction of each lane) and includes thesettings of “XI2,YI2,ZI2” as the location information, “square” as theshape, “900 mm×900 mm” as the size and “PG2” as the polygon identifier.

The positioning result by the GPS positioning device 300 inevitablyincludes some error, so that the current location of the vehicle may notbe accurately specified using only the positioning result by the GPSpositioning device 300. Accordingly, the location specifying apparatus100 of the first embodiment performs a vehicle location specifyingprocess described later, in order to specify the current location of thevehicle accurately.

The image input interface module 150 shown in FIG. 1 has an interfacefor connection with the imaging camera 200 and sends image data obtainedby the imaging camera 200 to the CPU 110 via the internal bus 190. TheGPS input interface module 160 has an interface for connection with theGPS positioning device 300 and sends information regarding thepositioning result by the GPS positioning device 300 to the CPU 110 viathe internal bus 190.

The position of a specific point in this embodiment corresponds to thespecific point-relevant location in the claims. The first vectorinformation storage unit 141 corresponds to the first vector informationstorage unit in the claims. The image data obtained by the imagingcamera 200 corresponds to the image data ahead of the moving body in theclaims. The GPS positioning device 300 corresponds to the locationsensor in the claims. The positioning result acquirer 112 corresponds tothe location information acquirer in the claims. The CCD of the imagingcamera 200 corresponds to the receiver in the claims. The featureinformation storage unit 143 corresponds to the predetermined featurelocation information storage unit and the shape information storage unitin the claims.

A2. Vehicle Location Specifying Process

FIG. 5 is a flowchart showing a procedure of vehicle location specifyingprocess according to the first embodiment. After the power-on, thevehicle location specifying process is performed repeatedly in thelocation specifying apparatus 100. The image data acquirer 111 firstcontrols the imaging camera 200 to take a still image and obtains imagedata of the taken still image (step S105).

The positioning result acquirer 112 obtains a positioning result by theGPS positioning device 300 at the image-taking time as informationregarding the estimated current location of the vehicle when the imagedata is obtained (hereinafter referred to as “estimated locationinformation”) (step S110). As described above, the GPS positioningincludes some error, so that the procedure of the embodiment treats thepositioning result of the GPS positioning device 300 as the estimatedcurrent location of the vehicle.

The area estimator 113 uses the estimated location information obtainedat step S110 and calculates vectors directed from the GPS positioningdevice 300 to the respective specific points (hereinafter referred to as“third vectors Vgp”) (step S115).

FIG. 6 is a diagram illustrating a third vector Vgp according to thefirst embodiment. FIG. 6 illustrates a side view of a vehicle 500running on the lane 50 and the sign 10. FIG. 6 shows only a third vectorVgp directed from the GPS positioning device 300 to the specific pointp1 as a representative of the third vectors Vgp directed from the GPSpositioning device 300 to the respective specific points. FIG. 6 alsoshows the first vector Vps (Vps1) described above (vector directed fromthe specific point p1 to the sign 10) and a second vector Vgc (vectordirected from the GPS positioning device 300 to the imaging camera 200),in addition to the third vector Vgp. FIG. 6 also shows a fourth vectorVcs and a fifth vector Vgs described later, in addition to the first tothe third vectors. The details of the fourth and the fifth vectors willbe described later.

The position information of the respective specific points is stored inthe vector table shown in FIG. 3, and the location of the GPSpositioning device 300 (estimated location when the image data isobtained) is obtained at step S110. At step S115, the third vectors Vgpare calculated based on the positions of the respective specific pointsand the estimated location. More specifically, at step S115, the areaestimator 113 calculates third vectors Vgp with regard to only specificpoints in a predetermined area (for example, a circular area with aradius of 50 m) about the location indicated by the estimated locationinformation obtained at step S110. In a modified procedure, the areaestimator 113 may calculate a third vector Vgp with regard to only aspecific point nearest to the location indicated by the estimatedlocation information (hereinafter referred to as “nearest point”).Accordingly, at step S115, the area estimator 113 may calculate a thirdvector Vgp directed from the GPS positioning device 300 to each specificpoint near to the location indicated by the estimated locationinformation.

Referring back to FIG. 5, the area estimator 113 uses the first to thethird vectors to calculate a vector directed from the imaging camera 200to the sign 10 (fourth vector Vcs mentioned above) (step S120). Morespecifically, the area estimator 113 calculates the fourth vector Vcs bysumming up the third vector Vgp and the first vector Vps shown in FIG. 6and subtracting the second vector Vgc from the sum. As described above,the third vectors Vgp are calculated with regard to the specific pointsin the predetermined area about the location indicated by the estimatedlocation information, so that a plurality of fourth vectors Vcs may becalculated based on these third vectors Vgp. At step S120, the areaestimator 113 determines a mean vector of the plurality of fourthvectors Vcs and uses the determined mean vector as the fourth vector Vcsfor the processing of and after step S125.

Referring back to FIG. 5, the area estimator 113 estimates an area wherean object feature exists (hereinafter referred to as “existing area”) inthe taken image, based on the fourth vector Vcs calculated at step S120(step S125). More specifically, in the procedure of the embodiment thearea estimator 113 estimates either a right half area or a left halfarea of the taken image as the existing area. This existing areacorresponds to the predetermined feature existing area in the claims.

FIG. 7 is a diagram illustrating one example of the existing areaestimated at step S125. For convenience of explanation, FIG. 7 shows afourth vector Vcs included in an image F1 obtained at step S105. In theillustrated example of FIG. 7, the fourth vector Vcs is given as avector directed from center Cp of the image F1 to the sign 10. At stepS125, the area estimator 113 determines a projection vector of thefourth vector Vcs to a plane perpendicular to the moving direction ofthe vehicle, i.e., a plane perpendicular to the middle line 55 andidentifies whether the projection vector is a vector directed rightwardrelative to the moving direction of the vehicle or a vector directedleftward relative to the moving direction of the vehicle. The areaestimator 113 estimates the right half area of the taken image as theexisting area when identifying the projection vector as a vectordirected rightward, and estimates the left half area of the taken imageas the existing image when identifying the projection vector as a vectordirected leftward. In the example of FIG. 7, the projection vector ofthe fourth vector Vcs is identified as a vector directed leftwardrelative to the moving direction of the vehicle, so that a left halfarea Ar1 of the image F1 is estimated as the existing area.

Referring back to FIG. 5, the locator 114 extracts features that arepossible candidates for the object feature (hereinafter referred to as“candidate features”) in the existing area estimated at step S125, fromthe taken image (step S130). In an exemplary procedure, the CPU110 mayregister in advance profile patterns of features that are possiblyselected as the object feature. At step S130, the locator 114 mayextract profiles by, for example, edge extraction, in the image andcompare the extracted profiles with the registered profile patterns toextract the candidate features.

The locator 114 performs pattern matching for each of the candidatefeatures extracted at step S130 with the polygons of object featuresrelated to the respective specific points, so as to identify the objectfeature included in the taken image (step S135).

The locator 114 subsequently calculates a vector directed from thevehicle (GPS positioning device 300) to the object feature identified atstep S135 (fifth vector Vgs mentioned above) (step S140). As describedabove, the location information of the respective features areregistered in the feature table shown in FIG. 4. The locator 114accordingly uses this location information and the estimated locationinformation obtained at step S110 to determine the fifth vector Vgs.

The locator 114 refers to the vector table, compares the fifth vectorVgs calculated at step S140 with the respective first vectors Vps toidentify the first vector Vps most approximate to the fifth vector Vgsand then identifies a specific point related to the identified firstvector Vps (step S145).

The locator 114 then specifies the position of the specific pointidentified at step S145, as the location of the vehicle (step S150).

The location specifying apparatus 100 of the first embodiment describedabove estimates an existing area of the object feature in the takenimage and makes only the estimated existing area subjected to theextraction process of candidate features. This configuration reduces theprocessing load of the CPU 110 and shortens the time required forspecifying the location of the vehicle, compared with a configurationthat makes the entire area of the taken image subjected to theextraction process of candidate features. The location specifyingapparatus 100 of the first embodiment calculates the vector directedfrom the imaging camera 200 to the sign 10 (fourth vector Vcs) andestimates the existing area based on the calculated vector. This enablesthe area where the sign 10 is included in the taken image to beestimated with high accuracy.

The location specifying apparatus 100 of the first embodiment stores theposition information of the respective specific points and stores theinformation regarding the first vectors Vps associated with therespective specific points. This enables the fourth vector Vcs to becalculated with high accuracy by using the first vectors Vps.

The location specifying apparatus 100 of the first embodiment alsostores the location information of the object feature and therebyenables the vector directed from the vehicle (GPS positioning device300) to the sign 10 (fifth vector Vgs) to be calculated when the objectfeature is identified. Additionally, the first vector Vps related to aspecific point closer to the current location of the vehicle is moreapproximate to the calculated fifth vector Vgs. The location specifyingapparatus 100 of the first embodiment accordingly specifies the positionof the specific point related to the first vector Vps most approximateto the fifth vector Vgs, as the location of the vehicle. This enablesthe location of the vehicle to be specified with high accuracy.

B. Second Embodiment

FIG. 8 is a block diagram illustrating the schematic configuration of alocation specifying apparatus 100 a according to a second embodiment.The location specifying apparatus 100 a of the second embodiment differsfrom the location specifying apparatus 100 of the first embodiment shownin FIG. 1 by that the hard disk drive 140 includes a fourth vectorinformation storage unit 144 in place of the first vector informationstorage unit 141. Otherwise the configuration of the location specifyingapparatus 100 a of the second embodiment is similar to the configurationof the location specifying apparatus 100 of the first embodiment. Thelike components are expressed by the like symbols and are notspecifically described.

The fourth vector information storage unit 144 stores in advanceinformation regarding fourth vectors Vcs associated with the respectivespecific points, in the form of a vector table.

FIG. 9 is a diagram illustrating one example of settings in the vectortable of the second embodiment. The vector table of the secondembodiment differs from the vector table of the first embodiment shownin FIG. 3 by replacement of the first vector field with a fourth vectorfield. Otherwise the configuration of the vector table of the secondembodiment is similar to the configuration of the vector table of thefirst embodiment and is thus not specifically described. As shown inFIG. 9, in the vector table of the second embodiment, informationregarding fourth vectors is set in relation to respective specificpoints. In this embodiment, vectors directed from the imaging camera 200to an object feature when the vehicle (GPS positioning device 300) islocated vertically above respective specific points are set as fourthvectors Vcs in the vector table. These fourth vectors Vcs are set inadvance in the vector table by the administrator.

FIG. 10 is a flowchart showing a procedure of vehicle locationspecifying process according to the second embodiment. The vehiclelocation specifying process of the second embodiment differs from thevehicle location specifying process of the first embodiment shown inFIG. 5 by replacement of steps S115 and S120 with steps S116 and S121and replacement of step S145 with step S145 a. Otherwise the vehiclelocation specifying process of the second embodiment is similar to thevehicle location specifying process of the first embodiment. The likesteps are shown by the like step numbers and are not specificallydescribed.

As shown in FIG. 10, after the estimated location information isobtained at step S110, the area estimator 113 specifies a nearest point(step S116). The area estimator 113 subsequently refers to the vectortable stored in the fourth vector information storage unit 144 toidentify a fourth vector Vcs related to the nearest point specified atstep S116 (step S121). The fourth vector Vcs related to the specificpoint nearest to the location estimated as the current location of thevehicle is approximate to a vector directed from the imaging camera 200to the object feature at the current location of the vehicle.

After the processing of step S121, the CPU110 performs the processing ofsteps S125 to S140 described above. After the processing of step S140,the locator 114 compares the fifth vector Vgs calculated at step S140with the fourth vectors Vcs in reaction to the respective specificpoints to identify the fourth vector Vcs most approximate to the fifthvector Vgs, and then identifies a specific point related to theidentified fourth vector Vcs (step S145 a). The procedure subsequentlyperforms the processing of step S150 described above.

The location specifying apparatus 100 a of the second embodimentdescribed above has the similar advantageous effects to those of thelocation specifying apparatus 100 of the first embodiment. Additionally,the location specifying apparatus 100 a of the second embodimentidentifies the fourth vector Vcs related to the specific point nearestto the location estimated as the current location of the vehicle andestimates the existing area based on the fourth vector Yes. The fourthvector Vcs related to the specific point nearest to the locationestimated as the current location of the vehicle is approximate to thevector directed from the imaging camera 200 to the object feature at thecurrent location of the vehicle. This ensures estimation of the existingarea with high accuracy. The location specifying apparatus 100 a of thesecond embodiment registers the fourth vectors Vcs in advance in thevector table and selects and identifies the fourth vector Vcs byreferring to this table. This reduces the processing load required foridentifying the fourth vector Vcs. Accordingly, this further shortensthe time required for specifying the location of the vehicle.

The fourth vector Vcs of the second embodiment corresponds to the firstvector in the claims.

C. Third Embodiment

FIGS. 11 and 12 are flowchart showing a procedure of vehicle locationspecifying process according to a third embodiment. A locationspecifying apparatus of the third embodiment has a configuration similarto the configuration of the location specifying apparatus 100 of thefirst embodiment shown in FIG. 1. The like components are expressed bythe like symbols and are not specifically described. The vehiclelocation specifying process of the third embodiment differs from thevehicle location specifying process of the first embodiment shown inFIG. 5 by addition of steps S111, S112 and S113. Otherwise the vehiclelocation specifying process of the third embodiment is similar to thevehicle location specifying process of the first embodiment. The likesteps are shown by the like step numbers and are not specificallydescribed.

The vehicle location specifying process of the third embodiment moves(shifts) an area estimated as the existing area in the image under apredefined condition. The following describes its concrete process withreference to FIGS. 11 and 12.

As shown in FIG. 11, after the estimated location information isobtained at step S110, the area estimator 113 specifies a nearest point(step S111). This step S111 is identical with step S116 of the secondembodiment described above.

The area estimator 113 subsequently refers to the vector table toidentify an object feature related to the nearest point specified atstep S111 and determines whether this identified object feature isidentical with an object feature related to a specific point previouslyspecified as the location of the vehicle (step S112).

When it is determined that the object feature related to the nearestpoint is identical with the object feature related to the specific pointpreviously specified as the location of the vehicle (step S112: YES),the area estimator 113 estimates an area shifted toward the edge of thetaken image from the previously estimated existing area, as a currentexisting area (step S113). When the previously estimated existing areais located in the left half area of the taken image, the area estimator113 estimates an area shifted by a predetermined amount toward the leftedge of the taken image, as a current existing area. When the previouslyestimated existing area is located in the right half area of the takenimage, on the other hand, the area estimator 113 estimates an areashifted by a predetermined amount toward the right edge of the takenimage, as a current existing area.

FIGS. 13A and 13B are diagrams illustrating one example of theprocessing of step S113. FIG. 13A shows an image F1 obtained in aprevious cycle of the vehicle location specifying process, and FIG. 13Bshows an image F11 obtained in a current cycle of the vehicle locationspecifying process. The image F1 of FIG. 13A is similar to the image F1of FIG. 7, with addition of a center point Ac1 of an existing area Ar1in FIG. 13A. FIG. 13B shows a fourth vector Vcs in the image F11, likeFIG. 13A.

As shown in FIG. 13A, in the previous cycle of the vehicle locationspecifying process, a left half area Ar1 of the image F1 is identifiedas the existing area. At step S113 in the current cycle of the vehiclelocation specifying process, as shown in FIG. 13B, an area Ar11 shiftedtoward the left edge in the image F11 is specified as a new existingarea. In this embodiment, “shifting toward the left edge” means shiftinga center point of an area toward the left edge. More specifically, acenter point Ac2 of the existing area Ar11 shown in FIG. 13B is shiftedby ΔA toward the left edge from the center point Ac1 of the existingarea Ar1 shown in FIG. 13A. The position of the shifted center point hasno change in the vertical direction in the existing area. According tothis embodiment, the left edge of the existing area is identical withthe left edge of the image. Accordingly, the left edge of the existingarea does not shift accompanied with a leftward shift of the centerpoint of the existing area. The existing area Ar11 shown in FIG. 13B isaccordingly smaller than the existing area Ar1 shown in FIG. 13A.

As shown in FIG. 13, the sign 10 placed on the left side of the lane 50shifts leftward in the view from the imaging camera 200 with the move ofthe vehicle. Accordingly, the location of the sign 10 in the taken imageis moved leftward in an image obtained at the later time. In the case ofextraction of the same object feature, the area shifted toward the edgein the image obtained at the later time is thus estimated as theexisting area. According to this embodiment, the shift amount AA of theexisting area is stored in advance as a predefined amount according tothe vehicle speed in the ROM 130. For example, the shift amount AA maybe set to increase with an increase in current vehicle speed.

As shown in FIG. 12, after the processing of step S113 described above,the processing of and after step S130 is then executed as describedabove.

When it is determined at step S112 that the object feature related tothe nearest point is not identical with the object feature related tothe specific point previously specified as the location of the vehicle(step S112: NO), as shown in FIG. 12, the procedure performs theprocessing of and after step S115 as described above. In this case, thearea estimator 113 calculates the third vectors Vgp and the fourthvector Vcs and estimates the existing area based on the fourth vectorVcs. When the object feature related to the nearest point is notidentical with the object feature related to the specific pointpreviously specified as the location of the vehicle, the object featurein the current cycle of the vehicle location specifying process is morelikely to be different from the previous object feature. Accordingly, itis not reasonable to estimate the area shifted toward the edge in theimage obtained at the later time as the new existing area as describedabove. For this reason, like the first embodiment, the area estimator113 newly calculates the fourth vector Vcs and estimates the newexisting area based on the fourth vector Vcs.

The location specifying apparatus of the third embodiment describedabove has the similar advantageous effects to those of the locationspecifying apparatus 100 of the first embodiment. Additionally, when theobject feature identified in the current cycle of the vehicle locationspecifying process is expected to be the same as the previouslyidentified object feature, the location specifying apparatus of thethird embodiment estimates the area shifted toward the edge of the imagefrom the previously identified area, as the new existing area. Thisensures estimation of the existing area with the higher accuracy.Shifting the area toward the edge of the image narrows the estimatedexisting area. This further reduces the processing load of the CPU 110in the process of extracting candidate features. Accordingly, thisfurther shortens the time required for specifying the location of thevehicle.

D. Fourth Embodiment

FIG. 14 is a diagram showing one example of settings in a vector tableaccording to a fourth embodiment. A location specifying apparatus of thefourth embodiment differs from the location specifying apparatus 100 ofthe first embodiment by the settings in the vector table. Otherwise theconfiguration of the location specifying apparatus of the fourthembodiment is similar to the configuration of the location specifyingapparatus 100 of the first embodiment. The like components are expressedby the like symbols and are not specifically described.

As shown in FIG. 14, the vector table of the fourth embodiment differsfrom the vector table of the first embodiment shown in FIG. 3 byaddition of an “angle” field. Otherwise the configuration (fields) ofthe vector table of the fourth embodiment is similar to theconfiguration of the vector table of the first embodiment and is thusnot specifically described. The vector table of FIG. 14 has registry offour records with respect to four specific points p5, p6, p7 and p8which are different from the specific points p1 to p3 described above.According to this embodiment, the angle field stores angles betweenfirst vectors and a normal line of a representative surface of an objectfeature.

FIG. 15 is a diagram illustrating one example of settings in the anglefield of the vector table. In the example of FIG. 15, four specificpoints p5 to p8 are set on a middle line 56 of a lane 51. A sign 11 isset as the object feature related to these four specific points p5 top8. An object feature identifier “L11” shown in FIG. 14 is theidentifier of the sign 11. As shown in FIG. 15, first vectors Vps5 toVps8 are respectively set in relation to four specific points p5 to p8.

As shown in broken-line bubbles of FIG. 15, angles between a normalvector PL of a representative surface Sr of the sign 11 and the firstvectors Vps5 to Vps8 (hereinafter called “object feature angles”) areset in relation to the respective specific points p5 to p8. According tothis embodiment, the “angle between the normal vector PL and the firstvector Vps” denotes the smaller angle between two angles obtained byprojecting these two vectors PL and Vps on three planes, i.e., X-Yplane, X-Z plane and Y-Z plane and determining angles between twoprojection vectors on each plane. According to this embodiment, the X-Yplane denotes a horizontal plane at the installation position of thesign 11. The X-Z plane denotes a plane perpendicular to the X-Y planeand parallel to the middle line 56. The Y-Z plane denotes a planeperpendicular to the X-Y plane and orthogonal to the middle line 56.FIG. 15 shows the angles between the projection vectors on the X-Y planeas the representative of the angles between the normal vector PL and thefirst vectors Vps associated with the respective specific points p5 top8.

As shown in FIGS. 14 and 15, an angle θx5 between the normal vector PLand the first vector Vps5 is set as part of the object feature angleswith respect to the specific point p5. Similarly, an angle θx6 betweenthe normal vector PL and the first vector Vps6 is set as part of theobject feature angles with respect to the specific point p6. An angleθx7 between the normal vector PL and the first vector Vps7 is set aspart of the object feature angles with respect to the specific point p7.An angle θx8 between the normal vector PL and the first vector Vps8 isset as part of the object feature angles with respect to the specificpoint p8.

As shown in FIG. 15, with respect to the object feature angles, theangle between the projection vectors on the X-Y plane is set to thelarger value at the specific point nearer to the sign 11. In the exampleof FIG. 15, the specific point p8 is located lateral to the sign 11along the middle line 56 and has the object feature angle of 90 degrees.Different specific points have different object feature angles in thismanner and thereby have different external shapes of the representativesurface of the object feature in the taken image.

FIG. 16 is a flowchart showing a procedure of vehicle locationspecifying process according to the fourth embodiment. The vehiclelocation specifying process of the fourth embodiment differs from thevehicle location specifying process of the first embodiment shown inFIG. 5 by addition of step S131 and replacement of step S135 with stepS135 a. Otherwise the vehicle location specifying process of the fourthembodiment is similar to the vehicle location specifying process of thefirst embodiment. The like steps are shown by the like step numbers andare not specifically described.

After extraction of candidate features at step S130, the locator 114corrects the shape of each of the extracted candidate features based onthe object feature angles related to a nearest point (step S131). Morespecifically, the locator 114 specifies a nearest point and refers tothe vector table to identify the object feature angles related to thenearest point. The locator 114 subsequently performs image processingusing the identified object feature angles such that a representativesurface of each candidate feature faces the front in the image (such asto make the normal vector PL of the sign 11 parallel to the first vectorVps) and thereby corrects (deforms) the shape of the candidate feature.Any of known techniques may be employed for such image processing.

The locator 114 performs pattern matching for each of the correctedcandidate features with object features related to the respectivespecific points, so as to identify the object feature included in thetaken image (step S135 a). After the processing of step S135 a, theprocessing of steps S140 to S150 is then executed as described above.

The location specifying apparatus of the fourth embodiment describedabove has the similar advantageous effects to those of the locationspecifying apparatus 100 of the first embodiment. Additionally, thelocation specifying apparatus of the fourth embodiment sets in advanceobject feature angles in relation to the respective specific points andcorrects (deforms) the shape of each candidate feature based on theobject feature angles related to the nearest point. Irrespective of thelocation of the vehicle on the middle line 56 of the lane 51 relative tothe object feature, this enables the object feature to be identifiedwith high accuracy by pattern matching for the candidate features.

E. Fifth Embodiment

E1. Configuration of Apparatus

FIG. 17 is a block diagram illustrating the schematic configuration of alocation specifying apparatus 100 b according to a fifth embodiment. Thelocation specifying apparatus 100 b of the fifth embodiment differs fromthe location specifying apparatus 100 of the first embodiment shown inFIG. 1 by that a laser scanner input interface (I/F) module 170 isadditionally provided and that the hard disk drive 140 includes a sixthvector information storage unit 145 in place of the second vectorinformation storage unit 142. Otherwise the configuration of thelocation specifying apparatus 100 b of the fifth embodiment is similarto the configuration of the location specifying apparatus 100 of thefirst embodiment. The like components are expressed by the like symbolsand are not specifically described.

The laser scanner input interface module 170 has an interface forconnection with a laser scanner 400 and is connected with the laserscanner 400. The laser scanner input interface module 170 is alsoconnected with the internal bus 190 and sends the measurement result bythe laser scanner 400 to the CPU 110 via the internal bus 190. The laserscanner 400 emits a laser pulse and receives its reflected wave tomeasure a distance, a horizontal angle and a vertical angle of an objectrelative to the position of the laser scanner 400.

FIG. 18 is a diagram illustrating a sixth vector in the fifthembodiment. The sixth vector is stored in advance in the sixth vectorinformation storage unit 145 shown in FIG. 17. As shown in FIG. 18, asixth vector Vpc denotes a vector directed from a specific point to theimaging camera 200 when the GPS positioning device 300 is locatedvertically above the specific point. FIG. 18 shows the sixth vector Vpcwhen the GPS positioning device 300 is located vertically above aspecific point p1. This sixth vector Vpc is, however, a fixed vectorirrespective of the location of the vehicle. More specifically, when theGPS measuring device 300 is located vertically above another specificpoint, a vector directed from this another specific point to the imagingcamera 200 is identical with the sixth vector Vpc shown in FIG. 18. Whenthe GPS measuring device 300 is located vertically above any positionother than any specific point, a vector directed from this position tothe imaging camera 200 is identical with the sixth vector Vpc shown inFIG. 18. This sixth vector Vpc may be determined in advance bymeasurement.

E2. Vehicle Location Specifying Process

FIG. 19 is a flowchart showing a procedure of vehicle locationspecifying process according to the fifth embodiment. After thepower-on, the vehicle location specifying process is performedrepeatedly in the location specifying apparatus 100 b. The image dataacquirer 111 first obtains image data (step S205). This step S205 issimilar to step S105 in the above embodiments and is not specificallydescribed.

The area estimator 113 specifies nearby specific points around theestimated current location of the vehicle, based on the positioningresult by the GPS positioning device 300 at the image-taking time (stepS210). The GPS positioning device 300 receives signals from a pluralityof GPS satellites and respectively specifies a plurality of areasestimated to include the current location, based on the respectivesignals. The area estimator 113 specifies specific points included in anoverlap area of the plurality of specified areas, as the nearby specificpoints around the estimated current location at step S210. The method ofspecifying the nearby specific points around the estimated currentlocation is not limited to this procedure, but another procedure asdescribed below may be employed for the same purpose. The area estimator113 may specify specific points included in a predetermined area (forexample, a circular area with a predetermined radius) about the locationdetermined by the positioning result of the GPS positioning device 300,as the nearby specific points around the estimated current location. Inthe description below, it is assumed that the above three specificpoints p1, p2 and p3 shown in FIG. 2 are specified at step S210.

With regard to each of the nearby specific points specified at stepS210, the area estimator 113 identifies the end point of a first vectorVps in the taken image on the assumption that the first vector Vps isincluded in the taken image and specifies a predetermined area about theposition of the identified end point as an area that is a possiblecandidate for the existing area (hereinafter referred to as “candidateexisting area”) (step S215). According to this embodiment, the areaestimator 113 specifies a square area with a predetermined number ofpixels on each side about the position of the end point of the firstvector Vps in the image, as the candidate existing area. The length ofeach side of this candidate existing area is set according to thedistance between the specific point and the object feature (magnitude ofthe first vector Vps). More specifically, the length of each side of thecandidate existing area is set to the larger value in relation to thespecific point having the smaller distance from the object feature. Thesize of an identical object feature in the taken image decreases with anincrease in distance of the vehicle from the object feature. The aboveconfiguration accordingly enables an area of adequate size to bespecified with elapse of time, as the candidate existing area. After theprocessing of step S215, the area estimator 113 sums up all thecandidate existing areas with regard to the respective specific pointsobtained at step S215, as an existing area (step S220).

FIG. 20 is a diagram illustrating an existing area according to thefifth embodiment. An image F1 of FIG. 20 differs from the image F1 ofFIG. 7 by replacement of the existing area Ar1 with an existing areaAr20 but is otherwise similar to the image F1 of FIG. 7.

In FIG. 20, the existing area Ar20 is shown as an area encompassed bythe thick solid line. This existing area Ar20 is a total area of acandidate existing area Ar11, a candidate existing area Ar12 and acandidate existing area Ar13. The candidate existing area Ar11 denotes acandidate existing area with regard to the specific point p1. Morespecifically, the candidate existing area Ar11 denotes an estimated areawhere the object feature (sign 10) is expected to exist in the takenimage when the current location of the vehicle is at the specific pointp1. Similarly, the candidate existing area Ar12 denotes a candidateexisting area with regard to the specific point p2, and the candidateexisting area Ar13 denotes a candidate existing area with regard to thespecific point p3. Among the three specific points p1, p2 and p3, thespecific point p1 is most distant from the sign 10 as the objectfeature, the specific point p2 is second most distant from the sign 10,and the specific point p3 is nearest to the sign 10. Accordingly, thecandidate existing area Ar11 is the smallest, the candidate existingarea Ar12 is the second smallest and the candidate existing area Ar13 isthe largest as shown in FIG. 20.

Referring back to FIG. 19, after the processing of step S220, thelocator 114 performs the processing of steps S225 and S230. These twosteps are respectively similar to steps S130 and S135 in the aboveembodiments and are thus not specifically described.

After identification of an object feature at step S230, the locator 114specifies a vector directed from the imaging camera 200 to theidentified object feature in the taken image (step S235). In the exampleof FIG. 20, a vector Vf directed from the center Cp of the image F1 tothe center point of the object feature is specified at step S235, as thevector directed from the imaging camera 200 to the object feature in thetaken image.

The locator 114 controls the laser scanner 400 via the laser scannerinput interface module 170 to determine the distance, the horizontalangle and the vertical angle from the laser scanner 400 to the objectfeature. According to this embodiment, the laser scanner 400 is placedin the vicinity of the imaging camera 200. Accordingly, the distance,the horizontal angle and the vertical angle from the laser scanner 400to the object feature can be regarded as the distance, the horizontalangle and the vertical angle from the imaging camera 200 to the objectfeature. Accordingly, the locator 114 determines the distance, thehorizontal angle and the vertical angle from the imaging camera 200 tothe object feature (step S240).

The locator 114 subsequently specifies a vector directed from the actualimaging camera 200 (not in the image F1) to the object feature (fourthvector Vcs), based on the vector specified at step S235 (for example,vector Vf) and the distance, the horizontal angle and the vertical angledetermined at step S240 (step S245). The locator 114 reads out the sixthvector Vpc stored in the sixth vector information storage unit 145 andadds the sixth vector Vpc to the fourth vector Vcs specified at stepS245, so as to determine a vector directed from the current location tothe object feature (step S250). The locator 114 then specifies thecurrent location of the vehicle, based on the vector obtained at stepS250 and the coordinates of the object feature (step S255).

FIG. 21 is a diagram schematically illustrating the processing detail ofsteps S250 and S255. As described above, the fourth vector Vcs shown inFIG. 21 is specified at step S245. A vector directed from a currentlocation pp of the vehicle to the sign 10 as the object feature (vectorVt) is accordingly determined by adding the sixth vector Vpc to thisfourth vector Vcs. The coordinates of the current location pp are thenspecified, based on this vector Vt and the known coordinates of the sign10.

The location specifying apparatus 100 b of the fifth embodimentdescribed above has the similar advantageous effects to those of thelocation specifying apparatus 100 of the first embodiment. As clearlyunderstood from the above respective embodiments, it is not essential tostore the second vector Vgc in advance in the location specifyingapparatus. Like this embodiment, a vector Vpc directed from a certainpoint (point vertically below the GPS positioning device 300) to theimaging camera 200 may alternatively be stored in advance.

E3. Modification of Fifth Embodiment

The procedure of the vehicle location specifying process of the fifthembodiment may be modified as described below. After the processing ofsteps S205 to S230, the CPU 110 may identify the candidate existing areain which the identified object feature (more specifically, center pointof the object feature) is located in the taken image. The CPU 110 maysubsequently specify the position of the specific point related to theidentified candidate existing area in which the object feature islocated, as the current location of the vehicle. In the example of FIG.20, the sign 10 is located in the candidate existing area Ar12, so thatthe position of the specific point p2 is specified as the currentlocation of the vehicle. The candidate existing area is set as an areain which the object feature is possibly included in the taken image whenthe vehicle is located at the specific point related to the candidateexisting area. The presence of the object feature in a certain candidateexisting area accordingly shows that the vehicle is located at orclosest to the specific point related to the candidate existing area.The configuration of this modification accordingly enables the currentlocation of the vehicle to be specified with high accuracy.Additionally, this configuration simplifies the processing and reducesthe overall processing load of the vehicle location specifying process,thus shortening the time required for specifying the current location ofthe vehicle.

F. Modifications

F1. Modification 1

In the above embodiments other than the second and the fifthembodiments, the vehicle location specifying process identifies thefirst vector Vps most approximate to the fifth vector Vgs at step S145.The disclosure is, however, not limited to this configuration. Forexample, in a modified procedure the CPU 110 may calculate a vector(Vgs-Vgp) with regard to each specific point by subtracting the thirdvector Vgp from the fifth vector Vgs, compare the first vector Vpsassociated with the specific point with this calculated vector andidentify a specific point having the smallest difference between thesetwo vectors. The vector (Vgs-Vgp) obtained by subtracting the thirdvector Vgp from the fifth vector Vgs is more approximate to the firstvector Vps. Identifying a specific point related to the first vector Vpsmost approximate to this obtained vector accordingly leads toidentifying the specific point closest to the actual location of thevehicle and thereby enables the location of the vehicle to be specifiedwith higher accuracy.

Similarly, in the second embodiment, the vehicle location specifyingapparatus 100 a identifies the fourth vector Vcs most approximate to thefifth vector Vgs at step S145 a. The disclosure is, however, not limitedto this configuration. For example, in a modified procedure the CPU 110may calculate a vector (Vgs-Vgc) with regard to each specific point bysubtracting the second vector Vgc from the fifth vector Vgs, compare thefourth vector Vcs associated with the specific point with thiscalculated vector and identify a specific point having the smallestdifference between these two vectors. The vector (Vgs-Vgc) obtained bysubtracting the second vector Vgc from the fifth vector Vgs is moreapproximate to the fourth vector Vcs. Identifying a specific pointrelated to the fourth vector Vcs most approximate to this obtainedvector accordingly leads to identifying the specific point closest tothe actual location of the vehicle and thereby enables the location ofthe vehicle to be specified with higher accuracy.

F2. Modification 2

In the above embodiments other than the second and the fifthembodiments, the position of the specific point identified at step S145is specified as the location of the vehicle. In the second embodiment,the position of the specific point identified at step S145 a isspecified as the location of the vehicle. The disclosure is, however,not limited to these configurations. As the vehicle moves during thetime period of obtaining image data at step S105 and specifying thelocation of the vehicle at step S150, the location of the vehiclespecified at step S150 is deviated from the actual location of thevehicle when step S150 is actually performed. In a modified procedurethe CPU 110 may accordingly measure the time required from the start ofstep S105 to the end of step S150, estimate a moving distance of thevehicle from the start of step S105 to the end of step S150 based on thecalculated time and the vehicle speed, correct the position of thespecific point identified at step S145 or S145 a in the moving directionof the vehicle based on the estimated moving distance, and specify thiscorrected position as the location of the vehicle. This modificationenables the current location of the vehicle to be specified with higheraccuracy.

F3. Modification 3

In the above embodiments other than the third and the fifth embodiments,the existing area is estimated as either a right half area or a lefthalf area of an image. The disclosure is, however, not limited to thisconfiguration. For example, the existing area may be estimated as one offour divisional areas, upper left, lower left, upper right and lowerright areas of an image. With reference to the example of FIG. 7, In amodified procedure the area estimator 113 may determine a projectionvector of the fourth vector Vcs on the plane perpendicular to the middleline 55, identify whether the projection vector is a vector directedrightward or a vector directed leftward as well as whether theprojection vector is a vector directed upward or a vector directeddownward, and estimate one of the four areas as the existing area.

The shape of the existing area is not limited to the rectangular shapebut may be any shape such as circular shape or triangular shape. Whenthe object feature is not a road surface marking but is a feature placedoutside of the road such as a sign or a power pole, the existing areamay be estimated after exclusion of an area distinctly estimated as theroad from the taken image. In a procedure employed for specifying thearea estimated as the road the area estimator 113 may detect a roadmarking line and a curbstone by, for example, pattern matching andspecify an area (lane) defined by such detection result as the area asthe road.

F4. Modification 4

In the second embodiment, the fourth vector Vcs set in the vector tableis the vector directed from the imaging camera 200 to the object featurewhen the vehicle (GPS positioning device 300) is located verticallyabove each specific point. The disclosure is, however, not limited tothis configuration. For example, a vector directed from the imagingcamera 200 to the object feature when the vehicle (GPS positioningdevice 300) is located at a point offset by a predetermined distancealong the moving direction of the vehicle or its opposite direction fromthe position vertically above each specific point may be set as thefourth vector Vcs in the vector table.

F5. Modification 5

In the above embodiments, the specific points are set on the middle line55 or on the middle line 56. The specific points may alternatively beset at any positions along the lane 50 or the lane 51, instead of themiddle line 55 or 56. The specific points are set at predeterminedintervals along the middle line 55 or 56 in the above embodiments butmay be set at various intervals.

F6. Modification 6

In the above embodiments, only one type of the second vector Vgc isstored in advance in the hard disk drive 140. Instead of only one type,any number of different types of vectors may be stored as the secondvectors Vgc. For example, in an application of the location specifyingapparatus 100 to a plurality of different types of vehicles, thedifferent types of vehicles may have different installation positions ofthe GPS positioning device 300 and different installation positions ofthe imaging camera 200. The second vectors Vgc for the respective typesof vehicles may thus be stored in the hard disk drive 140. In a modifiedprocedure the CPU 110 may identify the type of the vehicle prior to orduring the vehicle location specifying process and use the second vectorVgc corresponding to the identified type of the vehicle. In thismodified configuration the CPU 110 uses the vector reflecting the actuallocations of the GPS positioning device 300 and the imaging camera 200in the vehicle, as the second vector Vgc. This accordingly enables thelocation of the vehicle to be specified with higher accuracy.

F7. Modification 7

In the above embodiments, the start point and the end point of each ofthe first to the fourth vectors may be exchanged with each other. Forexample, in the first embodiment, vectors directed from an objectfeature as the start point to respective specific points as the endpoint may be employed as the first vectors Vps. In the secondembodiment, vectors directed from an object feature as the start pointto the position of the imaging camera 200 as the end point when thevehicle (GPS positioning device 300) is located vertically above therespective specific points may be employed as the fourth vectors Vcs.

F8. Modification 8

In the fourth embodiment, the candidate features are subjected tocorrection of the shape based on the object feature angles at step S131in FIG. 16. In place of or in addition to the candidate features, theshapes of polygons of object features related to the respective specificpoints may be subjected to correction.

F9. Modification 9

In the fourth embodiments, the angles associated with each specificpoint (object feature angles) are the angles between the normal vectorPL and the first vector Vps. These angles may be replaced with anglesbetween the representative surface Sr of the object feature and thefirst vector Vps. These angles may be specified as follows. The locator114 may project the representative surface Sr and the first vector Vpson the X-Y plane, the X-Z plane and the Y-Z plane and specify thesmallest angle among the angles between the projection of therepresentative surface Sr and the projection of the first vector Vps oneach plane, as the angle between the representative surface Sr and thefirst vector Vps. In general, any angle associated with an angle betweena representative surface of a predetermined feature and a first vectormay be employed as the relevant angle in the location specifyingapparatus of the disclosure.

F10. Modification 10

The configurations of the location specifying apparatuses 100 and 100 aof the above embodiments are only illustrative and may be modified invarious ways. For example, the first vector information storage unit141, the second vector information storage unit 142 and the featureinformation storage unit 143 are all stored in the hard disk drive 140in the above embodiments but may be stored in the ROM 130 instead of thehard disk drive 140. In the above embodiments, the imaging camera 200and the GPS positioning device 300 are provided separately from thelocation specifying apparatus 100. At least one of the imaging camera200 and the GPS positioning device 300 may, however, be providedintegrally with the location specifying apparatus 100. The imagingcamera 200 is installed to have the imaging range ahead of the vehiclein the above embodiments but may alternatively be installed to have theimaging range behind the vehicle. The object features described in theabove embodiments are the signs 10 and 11 respectively located outsideof the lane 50 and the outside of the lane 51. The object feature may,however, be a road surface marking. The GPS positioning device 300 maybe replaced with a Galileo system being created by the EU. In the aboveembodiments, the image data used in the vehicle location specifyingprocess is data obtained by the imaging camera 200. The disclosure is,however, not limited to this configuration. For example, the image datamay be data defined by reflected waves of radio waves in millimeterwaveband or laser emitted from the vehicle.

F11. Modification 11

In the above embodiments, part of the configuration implemented by thehardware may be replaced by software configuration, while part of theconfiguration implemented by the software may be replaced by hardwareconfiguration. When part or all of the functions of the disclosure isimplemented by the hardware, the hardware may be provided as variouscircuits including integrated circuits and discrete circuits or asvarious combinations of these circuits. When part or all of thefunctions of the disclosure is implemented by the software, the software(computer program) may be provided in the form of storage in a computerreadable recording medium. In the description hereof, the “computerreadable recording medium” is not limited to a portable recording mediumsuch as a flexible disk or a CD-ROM but includes internal storagedevices of the computer such as various RAMs and ROMs, as well asexternal storage devices fixed to the computer such as hard disk drives.In other words, the “computer readable recording medium” is used in thebroad sense including various recording media that are capable ofstoring data in a non-transitory manner.

The above embodiments illustrate and describe on the assumption that thevehicle 500 keeps to the left side of the road. The disclosure is,however, not limited to this configuration, but the vehicle 500 may keepto the right side of the road. In other words, the vehicle 500 may keepto the left or keep to the right in conformity with the trafficregulations in each nation where the apparatus and the non-transitorycomputer readable recording medium of the disclosure are applied. In theabove embodiments, the sign 10 is not limited to the sign shown in FIG.7 and FIGS. 13A and 13B. The sign 10 may be any sign used in each nationwhere the apparatus and the non-transitory computer readable recordingmedium of the disclosure are applied. As described above, thenon-essential descriptions in the above embodiments and modificationsmay be changed according to, for example, the traffic regulations andthe culture of each nation.

The disclosure is not limited to the embodiments and the modificationsdescribed above but may be implemented by a diversity of otherconfigurations without departing from the scope of the disclosure. Forexample, the technical features of any of the above embodiments andtheir modifications corresponding to the technical features of each ofthe aspects described in Summary may be replaced or combinedappropriately, in order to solve part or all of the problems describedabove or in order to achieve part or all of the advantageous effectsdescribed above. Any of the technical features may be omittedappropriately unless the technical feature is described as essential inthe description hereof.

For example, according to one aspect of the disclosure, there isprovided a location specifying apparatus that specifies a location of amoving body. This location specifying apparatus comprises a first vectorinformation storage unit configured to store vector informationregarding a first vector connecting a specific point-relevant location,which is associated with each of a plurality of specific points setalong a road, with a location of a predetermined feature, related toposition information regarding a position of the specific point; apredetermined feature location information storage unit configured tostore predetermined feature location information regarding the locationof the predetermined feature; an image data acquirer configured toobtain image data ahead of the moving body; and a locator configured toidentify a location of the predetermined feature in an image shown bythe image data and specify the location of the moving body based on theidentified location of the predetermined feature and the vectorinformation.

The location specifying apparatus of this aspect stores the vectorinformation (information regarding the first vector connecting thespecific point-relevant position with the location of the predeterminedfeature) related to the position information regarding the position ofthe specific point. The location specifying apparatus of this aspectuses this vector information to identify the location of thepredetermined feature in the image and thereby makes only part of thearea in the image subjected to processing. Compared with a configurationthat makes the entire area of the image subjected to processing, thisconfiguration reduces the processing load of the location specifyingapparatus. Accordingly this aspect shortens the time required forspecifying the location of the vehicle.

The location specifying apparatus of the above aspect may furthercomprise a location information acquirer configured to obtain estimatedlocation information from a location sensor mounted on the moving bodyto detect the estimated location information, wherein the estimatedlocation information is regarding a location estimated as a currentlocation of the moving body when the image data is obtained; and an areaestimator configured to estimate a partial area in the image shown bythe image data as a predetermined feature existing area in which thepredetermined feature exists, based on the vector information related toa specific point near to a position indicated by the obtained estimatedlocation information, wherein the locator analyzes image data of thepredetermined feature existing area in the obtained image data toidentify the location of the predetermined feature in the image, andspecifies the location of the moving body, based on the identifiedlocation of the predetermined feature, the estimated locationinformation and the vector information. The location specifyingapparatus of this aspect estimates a partial area in the image as thepredetermined feature existing area, analyzes the image data of thepredetermined feature existing area to identify the location of thepredetermined feature, and specifies the location of the moving body.Compared with a configuration that analyzes the image data with regardto the entire area in the image, this configuration reduces theprocessing load of the location specifying apparatus. Accordingly thisaspect shortens the time required for specifying the location of thevehicle.

The location specifying apparatus of the above aspect may furthercomprise a receiver configured to receive a reflected wave, in order toobtain the image data ahead of the moving body; and a second vectorinformation storage unit configured to store information regarding asecond vector connecting a location of the location sensor with alocation of the receiver. The specific point-relevant location may be anabsolute position of each specific point. The area estimator may beconfigured to specify a third vector connecting the location indicatedby the obtained estimated location information with the position of eachspecific point; specify a fourth vector connecting the location of thereceiver with the location of the predetermined feature when the imagedata is obtained, by using the first vector, the second vector and thethird vector; and estimate the predetermined feature existing area,based on the fourth vector. The location specifying apparatus of thisaspect specifies the fourth vector connecting the location of thereceiver and the location of the predetermined feature when the imagedata is obtained, and estimates the predetermined feature existing areabased on the fourth vector. This aspect enables the area where thepredetermined feature exists to be estimated in the image with highaccuracy.

In the location specifying apparatus of the above aspect, the secondvector information storage unit may store a plurality of vectorsaccording to different types of the moving bodies, as the second vector.The location specifying apparatus of this aspect stores a plurality ofvectors according to the different types of the moving bodies as thesecond vector and thereby selectively uses the vector to be used as thesecond vector according to the type of the moving body on which thelocation specifying apparatus is mounted. This configuration uses thevector suitable for the actual locations of the location sensor and thereceiver in the moving body, as the second vector. This aspect thusenables the location of the moving body to be specified with higheraccuracy.

The location specifying apparatus of the above aspect may furthercomprise a receiver configured to receive a reflected wave, in order toobtain the image data ahead of the moving body. The specificpoint-relevant location may be a location of the receiver when thereceiver is located at a predetermined position above each specificpoint. The area estimator may identify a first vector related to aspecific point nearest to the location indicated by the estimatedlocation information, and may estimate the predetermined featureexisting area based on the identified first vector. The first vectorrelated to the specific point nearest to the location indicated by theestimated location information is more approximate to a vectorconnecting the location of the receiver with the location of thepredetermined feature at the actual current location of the moving body,compared with the first vectors related to the other specific points.Accordingly, the location specifying apparatus of this aspect ensuresestimation of the predetermined feature existing area with highaccuracy.

In the location specifying apparatus of the above aspect, the locatormay specify a fifth vector connecting the identified location of thepredetermined feature with the location indicated by the estimatedlocation information. The locator may identify a first vector mostapproximate to the specified fifth vector out of the first vectorsrelated to the plurality of specific points, and may specify thelocation of the moving body based on a position of a specific pointrelated to the identified first vector. The first vector related to thespecific point nearer to the current location of the moving body is morelikely to be approximate to the fifth vector. Accordingly the locationspecifying apparatus of this aspect enables the location of the movingbody to be specified with high accuracy.

In the location specifying apparatus of the above aspect, the image dataacquirer may obtain a plurality of image data at different times. Thearea estimator may estimate the predetermined feature existing area withrespect to each of a plurality of images shown by the plurality of imagedata, such that with respect to an image shown by image data obtained ata later time, an area nearer to an edge of the image is estimated as thepredetermined feature existing area. In general, the location of thepredetermined feature in the image becomes closer to the edge of theimage with a decrease in distance from the predetermined feature.Accordingly the location specifying apparatus of this aspect ensuresestimation of the predetermined feature existing area with higheraccuracy.

In the location specifying apparatus of the above aspect, the image dataacquirer may obtain a plurality of image data at different times. Thearea estimator may estimate the predetermined feature existing area withrespect to each of a plurality of images shown by the plurality of imagedata, such that with respect to an image shown by image data obtained ata later time, a smaller area is estimated as the predetermined featureexisting area. In general, the location of the predetermined feature inthe image becomes closer to the edge of the image with a decrease indistance from the predetermined feature. It is accordingly reasonablethat a narrower (smaller) area nearer to the edge of the image isestimated as the predetermined feature existing area, with respect tothe image obtained at the later time. The location specifying apparatusof this aspect estimates the smaller area as the predetermined featureexisting area with respect to the image obtained at the later time andthereby further reduces the processing load for analysis of the imagedata.

The location specifying apparatus of the above aspect may furthercomprise a shape information storage unit configured to store shapeinformation regarding a shape of the predetermined feature specified bya reflected wave from the predetermined feature. The first vectorinformation storage unit may store a relevant angle associated with anangle between a representative surface of the predetermined feature andthe first vector, related to the position information regarding theposition of the specific point, in addition to the vector information.The locator may correct at least one of a shape of a feature in imagedata of the predetermined feature existing area and the shape of thepredetermined feature shown by the shape information stored in the shapeinformation storage unit, based on the relevant angle, and may identifya location of the predetermined feature in the image using a correctedshape. In general, the shape of the predetermined feature specified bythe reflected wave differs at different points. The location specifyingapparatus of this aspect, however, corrects at least one of the shape ofthe feature in the image data of the predetermined feature existing areaand the shape of the predetermined feature shown by the shapeinformation stored in the shape information storage unit, based on therelevant angle associated with the angle between the representativesurface of the predetermined feature and the first vector, andidentifies the location of the predetermined feature in the reflectedwave image using the corrected shape. This configuration enables thelocation of the predetermined feature to be identified with highaccuracy, irrespective of the location of the vehicle.

According to another aspect of the disclosure, there is provided anon-transitory computer-readable medium that has encoded thereon a datastructure that includes at least one data table storing vectorinformation executed in a process of specifying a location of a movingbody. In the non-transitory computer-readable medium the vectorinformation regarding a vector connecting a specific point-relevantlocation, which is associated with each of a plurality of specificpoints set along a road, with a location of a predetermined feature isrelated to position information regarding a positions of the specificpoint.

1. A location specifying apparatus that specifies a location of a movingbody, comprising: a first circuit configured to store informationregarding a predetermined feature including location information of thepredetermined feature, information regarding a position of a specificpoint on a road, and information indicating a correlation of theinformation regarding the predetermined feature to the informationregarding the position of the specific point on the road; and a secondcircuit configured: to obtain image data ahead of the moving body; toidentify a location of the predetermined feature in an image expressedby the image data, based on the information regarding the position ofthe specific point on the road, the information indicating thecorrelation, and the information regarding the predetermined feature;and to specify the location of the moving body, based on the identifiedlocation of the predetermined feature.
 2. The location specifyingapparatus according to claim 1, wherein the second circuit is configuredto specify the location of the moving body by estimating the position ofthe specific point on the road, based on comparison in relative sizebetween a candidate existing area that is identified as an area where animage of the predetermined feature is present and another candidateexisting area that is not identified as the area where the image of thepredetermined feature is present, among a plurality of the candidateexisting areas in which the image of the predetermined feature is likelyto be present in the image data.
 3. The location specifying apparatusaccording to claim 1, wherein the second circuit is configured toidentify the information regarding the position of the specific point onthe road that corresponds to the location of the moving body, and toidentify the information regarding the predetermined feature that isrelated to the identified information regarding the position of thespecific point, by using the information indicating the correlation. 4.The location specifying apparatus according to claim 1, wherein theinformation regarding the predetermined feature is stored according todegree of separation of an existing location of a feature relative froma road surface and suitability of a three-dimensional shape of afeature.
 5. The location specifying apparatus according to claim 1,wherein the first circuit is configured to store information indicatinga positional relationship of the predetermined feature to a road surfaceincluding the specific point, and the second circuit is configured touse the information indicating the positional relationship such as tospecify the location of the moving body.
 6. The location specifyingapparatus according to claim 1, wherein the information regarding theposition of the specific point includes information on positions of aplurality of specific points with respect to each lane along a drivingdirection.
 7. The location specifying apparatus according to claim 6,wherein the information regarding the predetermined feature includes atleast one of information regarding a road surface marking that is markedon a road, information regarding a sign placed along a road andinformation regarding a power pole placed along a road.
 8. The locationspecifying apparatus according to claim 7, wherein the informationregarding the predetermined feature includes information regarding ashape of the predetermined feature.
 9. A non-transitory computerreadable medium which information is written in, wherein the informationcomprises: information regarding a predetermined feature includinglocation information of the predetermined feature; information regardinga position of a specific point on a road; and information indicating acorrelation of the information regarding the predetermined feature tothe information regarding the position of the specific point on theroad, wherein the information is used in a process of specifying alocation of a moving body.